package net.csdn.business.common.oauth2.model.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import net.csdn.business.common.domain.SuperEntity;

import java.io.Serializable;
import java.util.Date;

 /**
 * personalToken信息表;
 * @author : duweiwei
 * @date : 2022-12-12
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("personal_access_token")
public class PersonalAccessToken implements Serializable{
    /** 配置id */

    @TableId(type = IdType.AUTO)
    private Long id ;

    /** 分布式id */
    private String objectId ;

    /** tokenId，形如ag_uuid */
    private String tokenId ;

    /** 用户ID */
    private String userId ;

    /** token名称 */
    private String tokenName ;

    /** 选中的所有scope，组成的字符串 */
    private String scopes ;

    /** 过期时间 */
    private Date expireTime ;

    /** 使用次数 */
    private Integer usedCount ;

    /** 上次使用时间 */
    private Date lastUseTime ;

     /** 是否撤销 0-否;1-是 */
    private Integer revoked ;

    /** 删除 0-否;1-是 */
    private Integer isDelete ;

    @TableField(fill = FieldFill.INSERT)
    protected Date createdDate;

    @TableField(fill = FieldFill.INSERT_UPDATE)
    protected Date lastModifiedDate;

}